#include <iostream>
using namespace std;

const int N = 1e5 + 10; 

int a[N],n;

void down(int par,int len){
	int chi = par * 2;
	while(chi <= len){
		if(chi + 1 <= len && a[chi + 1] > a[chi]) chi++;
		if(a[par] >= a[chi]) return ;
		
		swap(a[par],a[chi]);
		par = chi;
		chi = par * 2;
	}
}

void Hesort(){
	for(int i = n / 2;i >= 1;i--){
		down(i,n);
	} 
	for(int i = n;i > 1;i--){
		swap(a[1],a[i]);
		down(1,i-1);
	}
}

int main(){
	
	cin >> n;
	for(int i = 1;i <= n;i++){
		cin >> a[i];
	}
	Hesort();
	for(int i = 1;i <= n;i++){
		cout << a[i] << " ";
	}
}
